home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
data
/
pvap322a
/
pvaplist.plp
< prev
next >
Wrap
Text File
|
1993-11-30
|
4KB
|
151 lines
/************************************************************************
* IDリストの編集 *
************************************************************************/
/* PVAPLIST.DATをメモに表示 */
%listview{
CloseAllMemo;
madd(memono,{\n});
mclear(memono);
case (@filechk(DIR1|{\PVAPLIST.DAT}),
{Yes},{mread(DIR1|{\PVAPLIST.DAT},memono)});
mopen(memono,320,21,639,459,{r});
};
/* メイン */
%LISTVIEW{
listview;
loop({
SNDMSG({erande_f.snd});
footnote({終了選択追加},{b});
waitx();
case (@xtype,
101,{AllDelMEMO;im({No})},
201,{AllDelMEMO;im({No})},
102,{SELECT;im({Yes})},
202,{SELECT;im({Yes})},
103,{TSUIKA;im({Yes})},
203,{TSUIKA;im({Yes})},
memono,{SELECT;im({Yes})},,{im({Yes})});
});
};
/* ID・ハンドル追加処理 */
%TSUIKA{
SNDMSG({nyuryo_f.snd});
%a @plane( {cID・ハンドル追加\n}|
{tハンドル /1234567890123456789012345678\n}|
{tID /12345678\n}|
{s/ 終了 / 取消 \n});
%handle @head(@getline(a,1,1),{\n});
%id @head(@getline(a,2,1),{\n});
%ok @head(@getline(a,3,1),{\n});
%WRITE{
write (DIR1|{\PVAPLIST.DAT},
id|{ }|handle|{\n});
};
case(ok==1,{Yes},{WRITE;listview;setcdir(DIR1)},,{setcdir(DIR1)});
};
/* 処理選択 */
%SELECT{
SNDMSG({erande_f.snd});
select({処理を選んで下さい},99999,,
{ 削 除 },{DELETE;listview},
{ 変 更 },{HENKOU;listview});
};
/* ID・ハンドル削除処理 */
%DELETE{
%LineNo @xlinenum;
%MemoLine @nolmemo(memono);
%line1 @case (LineNo>MemoLine,
{Yes},{im(@memo(memono,MemoLine,1))},
{No},{case (LineNo<=0,
{Yes},{im(@memo(memono,1,1))},
{No},{im(@memo(memono,LineNo,1))})});
%lineno @case (LineNo>MemoLine,
{Yes}, {im(MemoLine)},
{No}, {case (LineNo<=0,
{Yes},{im(1)},
{No},{im(LineNo)})});
%delete{
%listdata @read(DIR1|{\PVAPLIST.DAT});
%del{
setcdir(DIR1);
delfile(DIR1|{\PVAPLIST.DAT});
write (DIR1|{\PVAPLIST.DAT},
@getline(listdata,1,lineno-1)|
@getline(listdata,lineno+1));
};
SNDMSG({kaknin_f.snd});
footnote({削除してよろしいですか?});
select({削除してよろしいですか?},99999,,
{ 削除する },del,
{ 削除しない },);
};
case(line1={}||line1={\n},{No},{delete});
};
/* ID・ハンドル変更処理 */
%HENKOU{
%LineNo @xlinenum;
%MemoLine @nolmemo(memono);
%line1 @case (LineNo>MemoLine,
{Yes},{im(@memo(memono,MemoLine,1))},
{No},{case (LineNo<=0,
{Yes},{im(@memo(memono,1,1))},
{No},{im(@memo(memono,LineNo,1))})});
%lineno @case (LineNo>MemoLine,
{Yes}, {im(MemoLine)},
{No}, {case (LineNo<=0,
{Yes},{im(1)},
{No},{im(LineNo)})});
%henkou{
%listdata @read(DIR1|{\PVAPLIST.DAT});
%handle @body(@getline(listdata,lineno,1),{ },{\n});
%id @head(@getline(listdata,lineno,1),{ });
SNDMSG({nyuryo_f.snd});
%a @plane( {cID・ハンドル変更\n}|
{tハンドル /1234567890123456789012345678\n}|
{tID /12345678\n}|
{s/ 終了 / 取消 \n},
handle,id);
%handle2 @head(@getline(a,1,1),{\n});
%id2 @head(@getline(a,2,1),{\n});
%ok @head(@getline(a,3,1),{\n});
%WRITE{
delfile(DIR1|{\PVAPLIST.DAT});
write (DIR1|{\PVAPLIST.DAT},
@getline(listdata,1,lineno-1)|
id2|{ }|handle2|{\n}|
@getline(listdata,lineno+1));
};
case(ok==1,{Yes},{WRITE;setcdir(DIR1)},,{setcdir(DIR1)});
};
case(line1={}||line1={\n},{No},{henkou});
};
/* 実行 */
%memono @mlast+1;
case (memono==9,
{Yes},
{SNDMSG({kaknin_f.snd});
footnote({メモ9を削除してもよろしいですか?});
select ({メモ9を削除してもよろしいですか?},
99999,, { は い },{%memono {9};LISTVIEW},
{ いいえ },)},
{No},{LISTVIEW});
case (@filechk(DIR1|{\PVAPLIST.DAT}),
{Yes}, {%listdata @read(DIR1|{\PVAPLIST.DAT});
case(listdata,{},{delfile(DIR1|{\PVAPLIST.DAT})})});